Advances in microelectronics and networking technology have enabled the development of increasingly complex computer systems. The software that controls these systems or operates thereon has also become exceedingly complex. As a result, companies often spend large sums to develop the software that they sell to consumers or use in commerce. Yet software, like other forms of electronic content—such as digital music, images, video clips, and text—can be easily modified, copied, and distributed without the permission of its creator.
Although encryption is often used to prevent the unauthorized use of electronic content, encryption is insufficient to protect content at all times, since the content must be decrypted before it can be used for its intended purpose, and once decrypted, can be saved, modified, copied, and/or transmitted to others in unencrypted form.
Content can also be protected by marking it with special identification information. The added information may, for example, identify the person to whom the content was sold. If all authorized copies of the content include such identification information, then someone who attempts to copy or sell the content without the creator's permission can be identified by examining the identification information found in the unauthorized copies.
Thus, a person wishing to distribute unauthorized copies of the electronic content may try to avoid detection by removing the identification information, or by forging the identification information of an innocent party. To avoid such attacks, content owners often try to hide the identification information, and/or to embed it in such a way that removing it from the content will render the content useless or less desirable.
Information that is added to electronic content in the manner described above is often referred to as a “watermark,” by analogy to the marks used by paper manufacturers to indicate the origin and quality of their paper. There are a number of fundamental differences, however, between digital watermarks and paper watermarks, including differences in the way the watermarks are applied and used, and in the properties that the watermarks possess.
While increasing attention has been paid to the development of techniques for watermarking digital images and digital audio and video content, relatively little attention has been paid to the development of techniques for watermarking software. Moreover, the watermarking techniques that have been developed for electronic content, and software in particular, are often relatively complicated to apply and/or relatively easy to defeat. What is needed are systems and methods for more efficiently and/or more robustly embedding information in software and other electronic content. Improved systems and methods are also needed for detecting, extracting, and decoding information embedded in software or other electronic content, and for using the embedded information to manage and enforce the rights and interests of the content owner.